import {
  Controller,
  Get,
  Param,
  Post,
  UploadedFile,
  UseInterceptors,
  Render,
  Query,
  HttpException,
  HttpStatus,
  Body,
} from "@nestjs/common";
import { FileInterceptor } from "@nestjs/platform-express";
import { Express } from "express";
import { SharedService } from "@/modules/shared/shared.service";
import { XfService } from "@/modules/shared/xf.service";
import * as moment from "moment";
import IResponse from "@/services/response.service";
import IGlobal from "@/services/global.service";
import axios from "axios";

@Controller("shared")
export class SharedController {
  constructor(
    private readonly sharedService: SharedService,
    private readonly xfService: XfService,
  ) {}

  @Get("downloads")
  @Render("downloads")
  getDownloads() {
    return this.sharedService.getDownloads();
  }
  @Get("wow")
  @Render("wow")
  getWowImages(@Query() query: any) {
    return this.sharedService.getWowImages(query);
  }

  @Post("upload")
  @UseInterceptors(FileInterceptor("file"))
  upload(@UploadedFile() file: Express.Multer.File) {
    return this.sharedService.upload(file);
  }

  @Get("xf")
  xf(@Query() query: any) {
    return this.xfService.getUrl();
  }

  @Get("debug/:id")
  debug(@Param("id") id: number) {
    return this.sharedService.debug(id);
  }

  @Get("test-hbs")
  @Render("test-hbs")
  renderPuppeteerScreenshot(@Query() query: { id: string }) {
    return { ...query };
    // return this.sharedService.renderPuppeteerScreenshot(query)
  }

  @Post("form-submit")
  formSubmit(@Body() body: any) {
    console.log("body", body);
    return { ok: 1 };
  }

  @Get("china-culture-chapter")
  getChinaCultureChapter() {
    return axios.get('https://course.chinaculture.org/Api/User/', {
      params: {
        'time': '1729220867511',
        'action': 'chapter',
        'sectionId': '290',
        '_': '1729220867372'
      },
      headers: {
        'accept': 'application/json, text/javascript, */*; q=0.01',
        'accept-language': 'zh-CN,zh;q=0.9',
        'cache-control': 'no-cache',
        'cookie': '_ga=GA1.1.54628838.1715323984; cits=open=close; SessionId=0bpkq3ixrl3baywt2ra4122x; Hm_lvt_84dc24868b5f8a9c6d383659c46305a3=1726650172,1728351282,1728982212; HMACCOUNT=A92529E7D4112670; Hm_lpvt_84dc24868b5f8a9c6d383659c46305a3=1729220843; cits_mice_mice=userinfo=%7b%22userToken%22%3a%226e57a8cec32b6f1224f2f24bad55e63b%22%2c%22userStr%22%3a%2205849d4117e0b0253ca36ad56316c4dd%22%7d; _ga_ZC8G18QZGY=GS1.1.1729219352.53.1.1729220867.0.0.0',
        'platform': 'mobile',
        'pragma': 'no-cache',
        'priority': 'u=1, i',
        'referer': 'https://course.chinaculture.org/Chinese/Core/section_detail.shtml?id=290&cr=core&cp=2',
        'sec-ch-ua': '"Google Chrome";v="129", "Not=A?Brand";v="8", "Chromium";v="129"',
        'sec-ch-ua-mobile': '?0',
        'sec-ch-ua-platform': '"macOS"',
        'sec-fetch-dest': 'empty',
        'sec-fetch-mode': 'cors',
        'sec-fetch-site': 'same-origin',
        'siteid': '84',
        'user-agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/129.0.0.0 Safari/537.36',
        'x-requested-with': 'XMLHttpRequest'
      }
    }).then(res => res.data).then(res => {
      res.course.content = `<h3>
拉萨-泽当-江孜-日喀则
</h3>
<div class="UE-insert-oss-video-wrapper">
<video data-url="https://1252139118.vod2.myqcloud.com/48f025a3vodcq1252139118/4273277a1397757895600749914/zWEsPBaKm9UA.mp4" data-poster="" data-file="1397757895600749914" poster="" src="https://1252139118.vod2.myqcloud.com/48f025a3vodcq1252139118/4273277a1397757895600749914/zWEsPBaKm9UA.mp4"></video>
</div>
<p>
建议游览天数：7天<br/>推荐入境口岸：北京、上海、成都<br/>推荐出境口岸：北京、上海、成都<br/>推荐旅游时间：4月-10月
</p>
<div class="UE-insert-oss-video-wrapper">
<video data-url="https://1252139118.vod2.myqcloud.com/d9fd38c0vodgzp1252139118/d16421be1397757895368502668/1ZPAEUlGLQEA.mp4" data-poster="" data-file="1397757895368502668" poster="" src="https://1252139118.vod2.myqcloud.com/d9fd38c0vodgzp1252139118/d16421be1397757895368502668/1ZPAEUlGLQEA.mp4"></video>
</div>
<p>
下面是个PPT
</p>
<div class="UE-insert-swiper-wrapper" style="border: 1px solid red;">
<p>
    <img src="https://office.chinatravelacademy.com/upload/ueditor/image/20241018/1729220470316486.jpg" _src="https://office.chinatravelacademy.com/upload/ueditor/image/20241018/1729220470316486.jpg" style="" title="1729220470316486.jpg"/><img src="https://office.chinatravelacademy.com/upload/ueditor/image/20241018/1729220470130677.jpg" _src="https://office.chinatravelacademy.com/upload/ueditor/image/20241018/1729220470130677.jpg" title="1729220470130677.jpg"/><img src="https://office.chinatravelacademy.com/upload/ueditor/image/20241018/1729220470915115.jpg" _src="https://office.chinatravelacademy.com/upload/ueditor/image/20241018/1729220470915115.jpg" title="1729220470915115.jpg"/><img src="https://office.chinatravelacademy.com/upload/ueditor/image/20241018/1729220496166397.jpg" title="1729220496166397.jpg" _src="https://office.chinatravelacademy.com/upload/ueditor/image/20241018/1729220496166397.jpg" alt="134055438fbadf0d8e7.jpg"/>
</p>
</div>
<p>
<br/>
</p>
<ul class=" list-paddingleft-2">
<li>
    <p>
        <strong>大昭寺</strong>(世界文化遗产，5A级旅游景区)：距今已有1300多年的历史，位于拉萨老城区的中心，是一座藏传佛教寺院。大昭寺是西藏历来重大佛事活动的中心所在，被称作“西藏之眼”。寺内香火终年旺盛，朝圣者络绎不绝，每日都被转经的人流簇拥着。信徒们虔诚地叩拜在门前的青石地板上，留下岁月和朝圣者的痕迹。
    </p>
</li><br/>
<li>
    <p>
        <strong>八廓街：</strong>环大昭寺外墙一圈称为“八廓”，大昭寺外辐射出的街道叫“八廓街”即八角街。其最初只是一条环绕大昭寺的普通街道，后来成为朝圣者的转经路，同时它也是拉萨最大的商业街，两旁店铺林立，经营大小各异的宗教器具与各式日用品。这里集餐饮、购物于一体，琳琅满目的民族手工艺品吸引着来自世界各地的游客。
    </p>
</li><br/>
<li>
    <p>
        <strong>罗布林卡</strong>(世界文化遗产，5A级旅游景区)：始建于18世纪40年代，是历代达赖喇嘛消夏理政的地方。它是一座典型的藏式风格园林，园内不仅有拉萨地区常见花木，还有取自喜马拉雅山南北麓的奇花异草，从内地移植或从国外引进的名贵花卉，堪称高原植物园。在每年一次的雪顿节期间，西藏各地的藏戏流派都汇集该处举行盛大会演，拉萨城内的老百姓更是举家前往罗布林卡，搭起帐篷，摆上青稞酒及各种美食，歌舞欢庆达一周时间。
    </p>
</li><br/>
<li>
    <p>
        <strong>色拉寺：</strong>色拉寺与哲蚌寺、甘丹寺合称拉萨三大寺。兴建于1419年，寺内环境清幽，自古就是高僧活佛讲经说法之地。色拉寺的辩经一直在藏区闻名，也是到色拉寺游览的重点。其辩经活动规模场面、动作规范、严谨激烈的程度都很具特色，十分耐看。<br/><br/><strong>小知识：</strong>辩经是藏传佛教学习佛法的一种方式。喇嘛们通过辩经明晰心中的教义，检验对宗教哲学的理解。辩经多在藏传佛教寺院内空旷地的树荫处进行。在辩经过程中，双方唇枪舌剑，言辞激烈，辩论者通常借助各种手势来增强辩论的力度，他们或击掌催促对方尽快回答问题，或拉动佛珠表示借助佛的力量战胜对方。
    </p>
</li><br/>
<li>
    <p>
        <strong>哲蚌寺：</strong>哲蚌寺是藏传佛教格鲁派六大寺院中规模最大的一座，现收藏有数以万计的文物古籍。各殿所供的不同时期的塑像均神态生动、结构严谨，代表了西藏雕塑工艺的极高水平。各殿的壁画色彩艳丽，线条有力。所有这些对于西藏历史、宗教、艺术等学科，都具有十分重要的价值。一年一度的拉萨雪顿节展佛（俗称晒大佛）活动在哲蚌寺举行。
    </p>
</li><br/>
<li>
    <p>
        <strong>推荐演出：</strong>《文成公主》实景剧场文艺演出
    </p>
</li>
</ul>
<p>
<br/>
</p>`
      return res
    })
  }

  @Get("schema")
  getSchema() {
    const appid = "wx48123a3ae14d8588";
    const secret = "7980e2e7e046621c9d919096eb8109f2";
    return axios.get(`https://api.weixin.qq.com/cgi-bin/token?grant_type=client_credential&appid=${appid}&secret=${secret}`)
      .then(res => res.data.access_token)
      .then(access_token => {
        return axios.post(`https://api.weixin.qq.com/wxa/generate_urllink?access_token=${access_token}`, {
          "path":"/pks/stream/prepare/prepare","query":"scene=uid%3D277195%26room%3D5706","expire_type":1,"expire_time":1,"expire_interval":1,"env_version":"release"
        }).then(d => d.data)
      })
    // return 
//     appid: wx851c2116dc8168b7
// secret: 42e8c44cfe89828e90c151ee1183e0cd
  }
}
